Managing event notifications

ABSTRACT

Systems, apparatuses, and methods are described for identifying and managing event notifications. An event notification manager may determine whether the received data corresponds to an occurring or a false event. The event notification manager may cause one or more user devices to output an event notification by at least partially interrupting output of other content.

BACKGROUND

Persons in a home or other type of environment may wish to be informedof events that may affect them or their environment. Information thatpotentially indicates an event may be received from a variety ofsources. Determining whether to provide a notification based on suchreceived information presents challenges.

SUMMARY

The following summary presents a simplified summary of certain features.The summary is not an extensive overview and is not intended to identifykey or critical elements.

Systems, apparatuses, and methods are described for managing eventnotifications. Data indicating an event may be received from one or moresensors and/or from one or more other sources (e.g., news reports,emergency messages, etc.). The received data may be processed (e.g., bycomparison to one or more event type criteria) to determine if some orall of the received data indicate occurrence of one or more events. Thereceived data may also or alternatively be processed to determine if anevent indicated by the received data is a false event (e.g., if thereceived data may have incorrectly indicated that event) and/or an eventthat may not be applicable to a particular premises or otherenvironment. Notifications may be output for events determined to haveoccurred. For example, one or more user devices may be caused to outputan audio, video, text, virtual reality (VR), augmented reality (AR),mixed reality (MR), and/or other type of notification associated with adetermined event. Notifications may be caused and/or omitted based onuser preferences and/or other configuration data. For example, and for aparticular event, one or more devices may be caused to output anotification different from a notification output by one or more otherdevices, and/or one or more devices may not be caused to output anotification. These and other features and advantages are described ingreater detail below.

BRIEF DESCRIPTION OF THE DRAWINGS

Some features are shown by way of example, and not by limitation, in theaccompanying drawings. In the drawings, like numerals reference similarelements.

FIG. 1 shows an example communication network.

FIG. 2 shows hardware elements of a computing device.

FIG. 3 shows an environment comprising events and event notifications.

FIGS. 4A, 4B, 4C, 4D, and 4E are a flowchart showing an example methodfor managing event notifications.

FIG. 5 shows an event and a virtual representation of the event.

FIG. 6 shows a user device located near an event comprising hazardouselements.

FIG. 7 shows an event located near a user device and an output device.

DETAILED DESCRIPTION

The accompanying drawings, which form a part hereof, show examples ofthe disclosure. It is to be understood that the examples shown in thedrawings and/or discussed herein are non-exclusive and that there areother examples of how the disclosure may be practiced.

FIG. 1 shows an example communication network 100 in which featuresdescribed herein may be implemented. The communication network 100 maycomprise one or more information distribution networks of any type, suchas, without limitation, a telephone network, a wireless network (e.g.,an LTE network, a 5G network, a WiFi IEEE 802.11 network, a WiMAXnetwork, a satellite network, and/or any other network for wirelesscommunication), an optical fiber network, a coaxial cable network,and/or a hybrid fiber/coax distribution network. The communicationnetwork 100 may use a series of interconnected communication links 101(e.g., coaxial cables, optical fibers, wireless links, etc.) to connectmultiple premises 102 (e.g., businesses, homes, consumer dwellings,train stations, airports, etc.) to a local office 103 (e.g., a headend).The local office 103 may send downstream information signals and receiveupstream information signals via the communication links 101. Each ofthe premises 102 may comprise devices, described below, to receive,send, and/or otherwise process those signals and information containedtherein.

The communication links 101 may originate from the local office 103 andmay comprise components not shown, such as splitters, filters,amplifiers, etc., to help convey signals clearly. The communicationlinks 101 may be coupled to one or more wireless access points 127configured to communicate with one or more mobile devices 125 via one ormore wireless networks. The mobile devices 125 may comprise smartphones, tablets or laptop computers with wireless transceivers, tabletsor laptop computers communicatively coupled to other devices withwireless transceivers, and/or any other type of device configured tocommunicate via a wireless network.

The local office 103 may comprise an interface 104. The interface 104may comprise one or more computing devices configured to sendinformation downstream to, and to receive information upstream from,devices communicating with the local office 103 via the communicationslinks 101. The interface 104 may be configured to manage communicationsamong those devices, to manage communications between those devices andbackend devices such as servers 105-107, and/or to manage communicationsbetween those devices and one or more external networks 109. Theinterface 104 may, for example, comprise one or more routers, one ormore base stations, one or more optical line terminals (OLTs), one ormore termination systems (e.g., a modular cable modem termination system(M-CMTS) or an integrated cable modem termination system (I-CMTS)), oneor more digital subscriber line access modules (DSLAMs), and/or anyother computing device(s). The local office 103 may comprise one or morenetwork interfaces 108 that comprise circuitry needed to communicate viathe external networks 109. The external networks 109 may comprisenetworks of Internet devices, telephone networks, wireless networks,wired networks, fiber optic networks, and/or any other desired network.The local office 103 may also or alternatively communicate with themobile devices 125 via the interface 108 and one or more of the externalnetworks 109, e.g., via one or more of the wireless access points 127.

The push notification server 105 may be configured to generate pushnotifications to deliver information to devices in the premises 102and/or to the mobile devices 125. The content server 106 may beconfigured to provide content to devices in the premises 102 and/or tothe mobile devices 125. This content may comprise, for example, video,audio, text, web pages, images, files, etc. The content server 106 (or,alternatively, an authentication server) may comprise software tovalidate user identities and entitlements, to locate and retrieverequested content, and/or to initiate delivery (e.g., streaming) of thecontent. The application server 107 may be configured to offer anydesired service. For example, an application server may be responsiblefor collecting, and generating a download of, information for electronicprogram guide listings. Another application server may be responsiblefor monitoring user viewing habits and collecting information from thatmonitoring for use in selecting advertisements. Yet another applicationserver may be responsible for formatting and inserting advertisements ina video stream being transmitted to devices in the premises 102 and/orto the mobile devices 125. The local office 103 may comprise additionalservers, additional push, content, and/or application servers, and/orother types of servers. Although shown separately, the push server 105,the content server 106, the application server 107, and/or otherserver(s) may be combined. The local office 103 may comprise additionalservers, such as additional push, content, and/or application servers,and/or other types of servers. Also or alternatively, one or moreservers 140.1 through 140.n may be part of the external network 109 andmay be configured to communicate (e.g., via the local office 103) withcomputing devices located in or otherwise associated with one or morepremises 102. Although shown separately, the push server 105, thecontent server 106, the application server 107, the servers 140.1-140.n,and/or other server(s) may be combined. The servers 105, 106, 107,140.1-140.n, and/or other servers, may be computing devices and maycomprise memory storing data and also storing computer executableinstructions that, when executed by one or more processors, cause theserver(s) to perform steps described herein.

An example premises 102 a may comprise an interface 120. The interface120 may comprise circuitry used to communicate via the communicationlinks 101. The interface 120 may comprise a modem 110, which maycomprise transmitters and receivers used to communicate via thecommunication links 101 with the local office 103. The modem 110 maycomprise, for example, a coaxial cable modem (for coaxial cable lines ofthe communication links 101), a fiber interface node (for fiber opticlines of the communication links 101), twisted-pair telephone modem, awireless transceiver, and/or any other desired modem device. One modemis shown in FIG. 1 , but a plurality of modems operating in parallel maybe implemented within the interface 120. The interface 120 may comprisea gateway 111. The modem 110 may be connected to, or be a part of, thegateway 111. The gateway 111 may be a computing device that communicateswith the modem(s) 110 to allow one or more other devices in the premises102 a to communicate with the local office 103 and/or with other devicesbeyond the local office 103 (e.g., via the local office 103 and theexternal network(s) 109). The gateway 111 may comprise a set-top box(STB), digital video recorder (DVR), a digital transport adapter (DTA),a computer server, and/or any other desired computing device.

The gateway 111 may also comprise one or more local network interfacesto communicate, via one or more local networks, with devices in thepremises 102 a. Such devices may comprise, e.g., display devices 112(e.g., televisions), other devices 113 (e.g., a DVR or STB), personalcomputers 114, laptop computers 115, wireless devices 116 (e.g.,wireless routers, wireless laptops, notebooks, tablets and netbooks,cordless phones (e.g., Digital Enhanced Cordless Telephone—DECT phones),mobile phones, mobile televisions, personal digital assistants (PDA)),landline phones 117 (e.g., Voice over Internet Protocol—VoIP phones),and any other desired devices. Example types of local networks compriseMultimedia Over Coax Alliance (MoCA) networks, Ethernet networks,networks communicating via Universal Serial Bus (USB) interfaces,wireless networks (e.g., IEEE 802.11, IEEE 802.15, Bluetooth), networkscommunicating via in-premises power lines, and others. The linesconnecting the interface 120 with the other devices in the premises 102a may represent wired or wireless connections, as may be appropriate forthe type of local network used. One or more of the devices at thepremises 102 a may be configured to provide wireless communicationschannels (e.g., IEEE 802.11 channels) to communicate with one or more ofthe mobile devices 125, which may be on- or off-premises.

The mobile devices 125, one or more of the devices in the premises 102a, and/or other devices may receive, store, output, and/or otherwise useassets. An asset may comprise a video, a game, one or more images,software, audio, text, webpage(s), and/or other content.

FIG. 2 shows hardware elements of a computing device 200 that may beused to implement any of the computing devices shown in FIG. 1 (e.g.,the mobile devices 125, any of the devices shown in the premises 102 a,any of the devices shown in the local office 103, any of the wirelessaccess points 127, any devices with the external network 109, any of theservers 140.1-140.n) and any other computing devices discussed herein(e.g., any of the sensors, user devices, and other computing devicesdescribed below and/or shown in any of the drawing figures). Thecomputing device 200 may comprise one or more processors 201, which mayexecute instructions of a computer program to perform any of thefunctions described herein. The instructions may be stored in anon-rewritable memory 202 such as a read-only memory (ROM), a rewritablememory 203 such as random access memory (RAM) and/or flash memory,removable media 204 (e.g., a USB drive, a compact disk (CD), a digitalversatile disk (DVD)), and/or in any other type of computer-readablestorage medium or memory. Instructions may also be stored in an attached(or internal) hard drive 205 or other types of storage media. Thecomputing device 200 may comprise one or more output devices, such as adisplay device 206 (e.g., an external television and/or other externalor internal display device) and a speaker 214, and may comprise one ormore output device controllers 207, such as a video processor or acontroller for an infra-red or BLUETOOTH transceiver. One or more userinput devices 208 may comprise a remote control, a keyboard, a mouse, agame controller, a VR controller, a MR controller, an AR controller, amotion sensing camera, a touch screen (which may be integrated with thedisplay device 206), microphone, etc. The computing device 200 may alsocomprise one or more network interfaces, such as a network input/output(I/O) interface 210 (e.g., a network card) to communicate with anexternal network 209. The network I/O interface 210 may be a wiredinterface (e.g., electrical, RF (via coax), optical (via fiber)), awireless interface, or a combination of the two. The network I/Ointerface 210 may comprise a modem configured to communicate via theexternal network 209. The external network 209 may comprise thecommunication links 101 discussed above, the external network 109, anin-home network, a network provider's wireless, coaxial, fiber, orhybrid fiber/coaxial distribution system (e.g., a DOCSIS network), orany other desired network. The computing device 200 may comprise alocation-detecting device, such as a global positioning system (GPS)microprocessor 211, which may be configured to receive and processglobal positioning signals and determine, with possible assistance froman external server and antenna, a geographic position of the computingdevice 200. The computing device may comprise sensor components thatenable the computing device to receive one or more of the data typesdescribed below.

Although FIG. 2 shows an example hardware configuration, one or more ofthe elements of the computing device 200 may be implemented as softwareor a combination of hardware and software. Modifications may be made toadd, remove, combine, divide, etc. components of the computing device200. Additionally, the elements shown in FIG. 2 may be implemented usingbasic computing devices and components that have been configured toperform operations such as are described herein. For example, a memoryof the computing device 200 may store computer-executable instructionsthat, when executed by the processor 201 and/or one or more otherprocessors of the computing device 200, cause the computing device 200to perform one, some, or all of the operations described herein. Suchmemory and processor(s) may also or alternatively be implemented throughone or more Integrated Circuits (ICs). An IC may be, for example, amicroprocessor that accesses programming instructions or other datastored in a ROM and/or hardwired into the IC. For example, an IC maycomprise an Application Specific Integrated Circuit (ASIC) having gatesand/or other logic dedicated to the calculations and other operationsdescribed herein. An IC may perform some operations based on executionof programming instructions read from ROM or RAM, with other operationshardwired into gates or other logic. Further, an IC may be configured tooutput image data to a display buffer.

FIG. 3 shows an example environment 300 that may comprise one or morespatial regions, wherein each spatial region may comprise one or moreelements. The one or more spatial regions may correspond to anycombination of arbitrarily shaped regions of space. For example, the oneor more spatial regions may be associated with a one or more premises102 (e.g., one or dwellings, offices and/or other building(s) and/orspace(s) such as a yard, parking lot, street, and/or other spatialregion that may be adjacent to or near the building(s)). The one or morespatial regions of the environment 300 may be contiguous ornoncontiguous, may comprise one or more rooms in a building, one or morefloors of a building, areas of land associated with a building, aneighborhood or portion thereof, one or more airspace regions (e.g.,above one or more premises), one or more bodies of water or portionsthereof, and/or other spatial regions. Elements within the environment300 may correspond to one or more naturally occurring elements (e.g.,terrain, bodies of water, atmosphere, terrestrial and/orextraterrestrial weather systems, various types of flora, vegetation,pathogens, human and other animal life forms, etc.) and/or one or morenon-naturally occurring elements (e.g., computing devices, buildings,ground vehicles, aircraft, watercraft, spacecraft, any other human-madedevices or structures, etc.). One or more elements may, alone or incombination with other elements, become associated with an event thatmay increase the risk of damage or harm to some or all of the otherelements. For example, an event may be associated with an increased riskof life-threatening injury to people residing within the environment ora portion of the environment.

One or more of events 301-1, 301-2, . . . , 301-M (collectively, “events301”; generically, “event 301”) may occur within (or otherwise affect)the environment 300. An event 301 may comprise one or more naturallyoccurring phenomena (e.g., an earthquake, a landslide, a tsunami,volcanic activity, an avalanche, a flood, an extreme temperature, adrought, a wild-fire or other fire of natural origin, a cyclone, astorm, a tornado, a hurricane, a wave-surge, a diseaseoutbreak/epidemic/pandemic, insect and/or animal activity, etc.). Alsoor alternatively, an event 301 may comprise one or more human-relatedphenomena (e.g., a ground vehicle and/or aircraft accident, a watercraftaccident, a structure fire, an emergency-medical-service (EMS) activity,a mass casualty, a violent conflict, criminal activity (e.g., burglary,robbery, etc.), riot or other civil unrest, a mass evacuation,environmental pollution, a hazardous material (HAZMAT) incident, anindustrial accident, a terrorist incident, etc.). An event may comprisea change in a condition and/or an expected change of condition, of theenvironment 300, that may be caused by or otherwise correspond tonaturally occurring phenomena and/or to human-related phenomena.

The environment may comprise one or more sensors 310-1, 310-2, . . . ,310-N (collectively “sensors 310”). An event may cause a sensor 310 tooutput sensor data indicative of a condition (e.g., light, sound,vibration, heat, smoke, moisture, etc.) detectable by that sensor 310.The sensors 310 may be computing devices and may send and/or receivedata via communication channels (e.g., via the external network 209).Each of the sensors 310 may send sensor data to an event notificationmanager 320 or other computing device. The sensor data may comprise oneor more data types such as audio data, images, video, thermal data,temperature data, entry sensor data (e.g., data indicating a door,window, or other premises access point has been opened or closed),security sensor data (e.g., data indicating a security sensor has beentripped), seismic data and/or other ground vibration data, atmosphericpressure data, humidity data, wind speed and/or direction data, gascomposition data, news report and/or weather report data, non-ionizingradiation data, ionizing radiation data, or any other type ofinformation associated with a condition in the environment 300 and/orwith an event. The sensors 310 may comprise one or more devices such asa video camera and/or a other video capture device, a microphone, athermal camera, a vibration sensor, a thermometer, a resistancetemperature detector (RTD), a Geiger counter, a thermocouple, athermistor, a wind sensor, a water sensor, a light detection and ranging(LIDAR) sensor, a Doppler radar, a traffic enforcement camera, anantenna for receiving electromagnetic radiation, an ionizing radiationdetector, a proximity sensor, an ultrasonic transducer, a pressuresensor, a photodetector, a photoelectric sensor, an accelerometer, alevel sensor, a touch switch sensor, a gas detector, a smoke detector,an inclinometer, a chemical field-effect transistor, a carbon dioxidesensor, a carbon monoxide sensor, a hygrometer, a Hall-effect sensor, agyroscope, an electro-optic sensor, a motion-detecting sensor, acatalytic bead sensor, meteorological and/or environment monitoringdevices, or any other type of device configured to detect one or moreconditions in the environment 300. One or more of the sensors 310(and/or an alarm monitoring system, gateway, home automation device,and/or computing device via which the sensor(s) communicate with theevent notification manager 320) may be configured to provide sensor datato the event notification manager 320 periodically and/or if a value ofa sensed environmental characteristic satisfies a threshold.

The event notification manager 320 may comprise one or more computingdevices (e.g., one or more of the servers 140.1 through 140.n, one ormore of the servers in the local office 103, etc.). Although the eventnotification manager 320 is not in the environment 300 in the example ofFIG. 3 , the event notification manager could also or alternativelycomprise a computing device located in the environment 300 (e.g., one ofthe computing devices shown in the premises 102 a, and/or an alarmmonitoring system and/or other computing device). The event notificationmanager 320 may send messages comprising instructions to any of thesensors 310. For example, the event notification manager 320 may sendinstructions to one of the sensors 310 requesting an alteration to oneor more sensor characteristics (e.g., device orientation, lens focalpoint, power consumption, awake/hibernation cycles, signal processingparameters, sampling rate, reporting times, reporting thresholds, etc.).The instructions may also comprise software applications and softwareupdates for installation on one or more of the sensors 310.

The event notification manager 320 may receive sensor data from thesensors 310 and subsequently determine if the sensor data corresponds toone or more of the events 301. For example, the event notificationmanager 320 may analyze wind speed and other atmospheric data collectedfrom one or more of the sensors 310 and determine that a weather-relatedevent (e.g., severe storm) is occurring. The event notification manager320 may analyze audio data, images, and/or video collected from one ormore of the sensors 310 and determine that one or more events associatedwith various combinations of sounds and/or images may be occurring(e.g., that sounds correspond to emergency services vehicle sirens, thatlight patterns correspond to emergency services vehicle flashing lights,that one or more sounds and/or one or more images correspond to thepresence of an intruder, etc.). The event notification manager 320 mayanalyze data from smoke and/or temperature detectors and determine thata fire event is occurring.

Also or alternatively, the event notification manager 320 may receive(e.g., via one or more network connections) additional types of dataindicating one or more types of events. The additional types of data,which are indicated generically in FIG. 3 as “additional input(s) 315,”may comprise one or more of news reports, emergency bulletins fromgovernmental authorities, Emergency Alert System (EAS) messages, and/orany other type of report or message indicating an event and/or possibleevent. A report, message, and/or other type of data received as anadditional input 315 may indicate a type of event (e.g., a type ofsevere weather event, a fire, a vehicle accident, an industrialaccident, a riot or other disturbance, a terrorist or other attack,criminal activity, and/or any other type of event) and/or other detailsabout the event (e.g., areas affected, areas likely to be affected,danger level, recommended actions (e.g., evacuate, shelter-in-place,etc.), and/or other details).

As described in more detail below, the event notification manager 320may, based on sensor data from one or more of the sensors 310 and/oradditional input(s) 315, determine whether an event has occurred. Theevent notification manager 320 may, for determined events and/or basedon user preferences and/or other configuration settings, cause one ormore user devices 330-1 through 330-K (collectively, “user devices 330”;generically, “user device 330”) to output one or more eventnotifications 340-1 through 340-K (collectively, “event notifications340”; generically, “event notification 340”). The user devices 330 maycomprise any of the devices described in connection with the premises102 a, a mobile device 125, a home automation system, a game console,and/or any other type of computing device. Although FIG. 3 shows anevent notification 340 associated with each user device 330, one or moreuser devices 330 associated with the event notification manager 320 maynot output an event notification.

One or more of the user devices 330 may output the event notifications340 via (and/or may comprise) one or more types of output devices (e.g.,display screen(s), speaker(s), VR headset(s), MR headset(s), ARheadset(s), earphone(s), etc.) that output audio, video, text, and/orother types of information to one or more users. An event notificationmay, for example, comprise audio describing, imitating (e.g., simulatingone or more sounds associated with), and/or otherwise indicating anevent, video and/or still images describing, imitating (e.g., simulatingone or more sights associated with), and/or otherwise indicating anevent, text describing and/or otherwise indicating event, and/or othertypes of output. An event notification may also or alternatively includeother types of information about an event (e.g., severity, expectedduration, recommended action, sources for additional information, etc.).

FIGS. 4A-4E are a flowchart showing steps of an example method formanaging event notifications. One, some, or all steps of the examplemethod of FIGS. 4A-4E may be performed by the event notification manager320, and for convenience FIGS. 4A-4E will be described below inconnection with the event notification manager 320. Also oralternatively, one, some, or all steps of the example method of FIGS.4A-4E may be performed by one or more other computing devices. One ormore steps of the example method of FIGS. 4A-4E, and/or one or morecommunications described in connection with the example method of FIGS.4A-4E, may be rearranged (e.g., performed, sent, or received in adifferent order), omitted, and/or otherwise modified, and/or other stepsand/or communications added. A communication described in connectionwith the example method of FIGS. 4A-4E need not be a single message norcontained in a single packet, block, or other transmission unit.

In step 401, the event notification manager 320 may determine if one ormore new data segments are available. A data segment may comprise sensordata from a sensor (e.g., one or more of the sensors 310). Also oralternatively, a data segment may comprise a report, message, and/orother data received as an additional input 315. Also or alternatively, adata segment may comprise information indicating geographic location(s)of one or more of the sensors 310 and/or of one or more conditionsdetected by the one or more sensors 301. Step 401 may comprisedetermining whether it is time to listen for new data segments (e.g.,whether a time period since a previous check for new data segments hasexpired). Also or alternatively, step 401 may comprise checking one ormore message queues to determine if sensor data has been received or ifan additional input has been received. Also or alternatively, step 401may comprise determining if there is some other indication of new sensordata and/or of a new additional input. If the event notification manager320 determines in step 401 that no new data segments are available, step401 may be repeated. If the event notification manager 320 determines instep 401 that new data segments are available, step 403 may beperformed.

In step 403, the event notification manager 320 may receive new datasegments (e.g., if step 401 comprised a determination of a time tolisten for new data segments) and/or retrieve new data segments (e.g.,if data segment(s) have been received and buffered in message queue(s),if step 401 comprised a determination that sensor data and/or additionalinput(s) should be requested, etc.). The new data segments may be storedas part of step 403. That storage may comprise assigning a time periodfor storage. Different types of data segments may be assigned differenttime periods. For example, a data segment from an additional input 315indicating a severe weather event may be stored for a time periodindicated in that additional input (e.g., a time period until anexpiration of a storm warning issued by a weather service). Conversely,various types of sensor data may be stored for a shorter period of timeand/or until other method steps are performed (e.g., step 434 describedbelow).

In step 406, the event notification manager 320 may compare each of thestored data segments to criteria associated with one or more predefinedevent types. For each of those event types for which the associatedcriteria are met by a stored data segment (including any data segmentsthat may remain stored after one or more previous iterations of themethod), an event data record may be generated. The event data recordmay comprise, may comprise a link to, and/or may be otherwise associatedwith, each of the data segments that meet the criteria associated withthe event type of the event data record. One or more of the stored datasegments may be associated with multiple event data records.

For example, the stored data segments may comprise an additional input315 indicating a severe thunderstorm, sensor data from microphoneindicating a sound consistent with thunder, sensor data from a windsensor indicating high winds, and sensor data from a camera indicatinglight flashes consistent with lighting. All of these data segments maybe associated with an event data record for a thunderstorm event type.However, the sensor data from the microphone may also indicate a soundconsistent with an explosion. Accordingly, that microphone sensor datamay also be associated with an event data record for an explosion eventtype. Additional details of step 406 are described below in connectionwith FIG. 4D.

In step 409, the event notification manager 320 may determine if anyevent data records were generated in the most recent performance of step406. If not (e.g., if none of the stored data segments met criteriaassociated with any event type), step 434 (FIG. 4B) may be performed. Ifone or more event data records were generated, step 413 may beperformed.

In step 413, the event notification manager 320 may select, from theevent data records generated in the most recent performance of step 406,an event record for further processing. In step 416, the eventnotification manager 320 may determine whether that currently-selectedevent data record corresponds to a false and/or inapplicable event. Afalse event may, for example, comprise an incorrect indication of anevent occurrence. That incorrect indication may result from data thatmight be consistent with an occurrence of a particular type of event,but which is determined (e.g., based on other data) to not actuallyindicate (and/or to have a low probability of indicating) an occurrenceof that type of event. An inapplicable event may comprise an actualevent, but that actual event may be of reduced concern (e.g., a stormlocated a significant distance from the environment 300 and that is notmoving toward the environment 300). Additional details of step 416 aredescribed below in connection with FIG. 4E. If the event notificationmanager 320 determines in step 416 that the currently-selected eventdata record corresponds to a false and/or inapplicable event, step 443(FIG. 4C) may be performed. If the event notification manager 320determines in step 416 that the currently-selected event data recorddoes not correspond to a false event and does not correspond to aninapplicable event, step 419 may be performed.

In step 419, the event notification manager 320 may select a user devicefrom one or more user devices associated with the event notificationmanager 320. The event notification manager 320 may, for example, beassociated with a group of one or more user devices (e.g., the userdevices 330). The associated user devices may be associated with theevent notification manager 320 based on one or more of: being located ina particular premises or other environment, being associated with aparticular account for provision of data and/or other services, beingassociated with a specific user or group of users, being registered withthe event notification manager as related devices, and/or othercharacteristics. The event notification manager may store and/orotherwise have access to data for each of the associated user devices.That data may comprise one or more of: device type, device outputcapabilities, associated user (e.g., minor or adult), notificationpreferences, user configuration settings, network address and/or otherinformation for communicating with the user device, connection status(e.g., whether connected to a network), operation status (e.g., whetherdevice is outputting content, content being output, etc.), geographiclocation (e.g., of a user device and/or of a premises), and/or otherinformation. The event notification manager 320 may be associated withmultiple groups of user devices (e.g., for each of multiple accounts,locations, etc.) and may separately perform the method of FIGS. 4A-4E(e.g., in separate programming threads) for each of those user devicegroups.

In step 420, the event notification manager 320 may determine whetherthe user device selected in the most recent performance of step 419should be caused to output an event notification based on thecurrent-selected event data record. Step 420 may comprise determiningwhether that user device is powered on, is connected to a network,and/or is otherwise in a state in which event notifications can beoutput. Step 420 may further comprise determining, based on notificationpreferences and/or user configuration settings, whether thatcurrently-selected user device should be caused to output an eventnotification based on the current-selected event data record. Forexample, a user may have input configuration information indicating thatnotifications for one or more types of events are not desired for one ormore user devices.

Also or alternatively, a user device (e.g., a user device associatedwith an adult, healthcare worker, parent, guardian, teacher, and/orother authority figure) may be configured to receive event notificationssent to one or more other user devices (e.g., user devices associatedwith family, children, friends, students, minors, healthcare patients,dependent(s), etc.). One or more of the other user devices may setnotification preferences indicating what information may be shared withthe user device (e.g., some types of event notifications may be sharedbut not others, a user device location may be shared or not shared, someportions of monitored health status may be shared and other portions notshared). Moreover, the user device may receive information of the one ormore other user devices based on the notification preferences. Forexample, a user may configure notification preferences so that receivedevent notification and monitored health status information are sent touser devices of family members and/or friends indicated by thenotification preferences.

If the event notification manager 320 determines in step 420 that thecurrently-selected user device should not be caused to output an eventnotification for the currently-selection event data record, step 428(described below) may be performed. If the event notification manager320 determines in step 420 that the currently-selected user deviceshould be caused to output an event notification for thecurrently-selection event data record, step 422 may be performed.

In step 422, the event notification manager 320 may determine what typeof notification to output. For example, the event notification manager320 may determine, for the device type of the currently selected userdevice, the event notification type that may be output by the userdevice (e.g., text only, image and/or video only, audio only, acombination of audio, image, video, and/or text, VR, MR, AR, etc.). Alsoor alternatively, the event notification manager 320 may determine,based on notification preferences and/or other user information, theevent notification type (e.g., text messages, warningsounds/imagery/video, types of event details and/or information tooutput such as indications of imminent hazards, text only, image and/orvideo only, audio only, a combination of audio, image, video, and/ortext, etc.). For example, the event notification manager 320 maydetermine, based on the notification preferences and/or other userinformation, to output detailed notifications (e.g., imagery/video of anearby traumatic event) for some user devices (e.g., used by adults),and/or less detailed notifications (e.g., a text and/or audio message tofind the nearest parent, teacher and/or other trusted adult) for otheruser devices (e.g., used by minors).

Step 422 may comprise generating, based on a template (e.g.,mathematical and/or physical predictive models, stock images and/orvideo and/or audio from libraries associated with different event types)corresponding to the event type, one or more of images, video, audio, ortext data associated with the event. For example, for a fire event type,imagery and/or video (e.g., graphical displays of smoke and/or hightemperatures in a premises and/or an outside location, indications ofpredicted spread or dissipation of the smoke and/or high temperatures)may be generated based on inputting sensed thermal data segments intofire predictive models (e.g., fire simulation tools). As another examplefor a storm event type, imagery and/or video (e.g., graphical displaysfor a local occurrence and predicted future occurrence ofweather-related phenomena such as precipitation, lightning, tornadoes,hurricanes, and/or other storm events) may be generated based oninputting sensed meteorological data segments into weather predictivemodels (e.g., weather simulation tools, the Lorenz weather model, etc.).As yet another example for an intruder event type, imagery and/or video(e.g., graphical displays of a premises indicating current location(s)of one or more intruders and predicted trajectories and/or futurelocations for the one or more intruders) may be generated based oninputting data segments (e.g., video data from video cameras, audio datafrom microphones, and/or other types of data output by sensors of a homesecurity system) into predictive models (e.g., equations for predictingfuture locations based on current location and velocity).

In step 425, the event notification manager 320 may cause thecurrently-selected user device to output an event notification of thetype determined in step 422. Step 425 may comprise sending, via anetwork, data to the user device that causes the user device to outputaudio, images, video, and/or text associated with the determined typeevent notification. The data sent to the user device may comprise eventnotification content (e.g., audio, images, video, and/or text to beoutput) and/or instructions to the user device to output that eventnotification content. The instructions may cause the user device tooutput the event notification for a specified amount of time (and/oruntil an expiration time), or may instruct the user device to output theevent notification until instructed (e.g., by the event notificationmanager 320 and/or by a user) to stop.

The event notification may at least partially interrupt output of othercontent by the user device. If, for example, the user device comprises adisplay screen being used to output video, images, and/or text for thatother content, image(s), video and/or text of the event notification maybe superimposed over a portion of that other content output. If, forexample, the user device comprises a speaker or other sound outputdevice being used to output audio for that other content, sound of theevent notification may be superimposed over a portion of that othercontent sound. If, for example, the user device comprises a VR outputdevice being used to output that other content, one or more virtualobjects may be created and inserted, into the VR output of that othercontent, to superimpose images, video, text, and/or audio of the eventnotification.

In step 428, the event notification manager 320 may determine if thereare other user devices, associated with the event notification manager320, to be evaluated for possible event notification based on thecurrently-selected event data record. If yes, step 419 may be repeated.If no, step 431 may be performed. In step 431, the event notificationmanager 320 may determine if there are other event data records,generated in the most recent performance of step 406, remaining to beprocessed. If yes, step 413 may be repeated. If no, step 434 may beperformed.

In step 434 (FIG. 4B), the event notification manager 320 may clean updata segments stored during the most recent performance of step 403,and/or during one or more previous performances of step 403. Asindicated above, different types of data segments may be stored fordifferent durations. Step 434 may comprise comparing a storage timestampof the data segment to a current time and determining if a storageduration has been exceeded. If so, the data segment may be deleted. Sometypes of data segments may be flagged as storable for a specifiedquantity (e.g., 1 or more) of iterations of the method of one or moreparts of the method of FIGS. 4A-4E. For such a data segment, the eventnotification manager 320 may determine how many times step 434 haspreviously been performed for that data segment and may delete the datasegment if that quantity of times equals or exceeds the specifiedquantity of iterations.

In step 437, the event notification manager 320 may determine if anyactive event notifications (e.g., caused by one or more performances ofstep 425) have been output for a specified amount of time and/or havereached an expiration time. For any such event notifications, the eventnotification manager 320 may cause (e.g., by sending one or moremessages) the corresponding user device(s) to cease outputting thoseevent notifications. In step 441, which may be similar to step 401, theevent notification manager 320 may determine if one or more new datasegments are available. If no, step 434 may be repeated. If yes, step403 (FIG. 4A) may be repeated.

As indicated above, the event notification manager 320 may in step 416determine whether a currently-selected event data record corresponds toa false and/or inapplicable event. If yes, step 443 (FIG. 4C) may beperformed. In step 443, similar to step 419, the event notificationmanager 320 may select a user device from the one or more user devicesassociated with the event notification manager 320. In step 446, theevent notification manager 320 may determine (e.g., based on one or morenotification preferences and/or configuration settings) if that userdevice should be caused to output a notification of a false and/orinapplicable event of the type associated with the currently-selectedevent data record. A user may, for example, wish be informed of a stormthat is far away, that noises outside a premises do not correspond to anemergency, and/or otherwise wish to receive a notification of a falseand/or inapplicable event. If the user device should not be caused tooutput a notification, step 453 may be performed. If the user deviceshould be caused to output a notification, the event notificationmanager 320 may in step 449 send one or more messages to cause suchoutput. In step 453, the event notification manager 320 may determine ifthere are additional user devices to be evaluated for possiblenotification of a false and/or inapplicable event. If yes, step 443 maybe repeated. If no, step 431 (FIG. 4A) may be performed.

FIG. 4D shows, as indicated by a broken line box, additional details ofstep 406 from FIG. 4A. In particular, FIG. 4D shows example steps406.1-406.8 that may be performed to generate event data records forevent types corresponding to the data segments stored in step 403.

The event notification manager 320 may store and/or access (e.g., in adatabase) data defining a plurality of predefined event types. Examplesof event types may include, without limitation, one or more of thefollowing: severe thunderstorm, tornado, hurricane, tsunami alert,flood, building fire, wildfire/forest fire, earthquake, riot, terroristactivity, chemical/industrial hazard, criminal activity, buildingintrusion, unspecified local emergency, and/or any other type of event.An event type may also be defined for sensor data that is not readilycharacterizable as associated with a particular type of event, but whichis of a character (e.g., high values for noise, light, etc.) thatindicates unusual activity for which notifications may be appropriate.

For each event type, the event notification manager 320 may store one ormore criteria for sensor data and/or for other data (e.g., additionalinformation 315) that, if met, indicate an event of that type may beoccurring. For example, various types of events may be associated withsounds having one or more intensity, frequency, duration, and/or othercharacteristics. A data segment comprising sound data may be compared tothe sound characteristic criteria for a predefined event type todetermine if that data segment corresponds to that event type. The soundcriteria for event types may be similar (e.g., building fire, criminalactivity, unspecified local emergency, and/or other event types may beassociated with sound criteria indicating emergency vehicle sirens) ormay be different.

As another example, various types of events may be associated with videoand/or images having one or more spectral, intensity, duration, and/orother characteristics. A data segment comprising video and/or image datamay be compared to the video/image characteristic criteria for apredefined event type to determine if that data segment corresponds tothat event type. The video/image criteria for event types may be similar(e.g., building fire, criminal activity, unspecified local emergency,and/or other event types may be associated with video/image criteriaindicating emergency vehicle lights) or may be different. As anotherexample, various types of events may be associated with patternsdetectable (e.g., using one or more pattern detection algorithms)detectable in video and/or images. A data segment comprising videoand/or image data may be compared to the pattern recognition criteriafor a predefined event type to determine if that data segmentcorresponds to that data type.

Criteria for various types of sensor data may be stored for otherpredefined event types. Further examples include, without limitation:wind speed criteria for severe thunderstorm, tornado, and/or hurricaneevents; water level criteria for a flood event; temperature, carbonmonoxide, and/or smoke criteria for building fire or wildfire/forestfire events; vibration criteria for an earthquake event; door and/orwindow sensor criteria for an intrusion event; etc.

As described above, a data segment (e.g., received as an additionalinput 315) may comprise a news report, an EAS message, a communicationfrom a governmental authority, and/or other type of report from anoutside authority comprising text and/or metadata indicating the eventtype and/or providing other information about the event. For each ofsome or all predefined event types, the criteria may comprise one ormore words and/or data flags. A data segment comprising a report from anoutside authority may be compared against that criteria (e.g., byparsing text for one or more words and/or checking for one or more dataflags) to determine if that data segment corresponds to an event type.

In step 406.1, the event data manager 320 may select a data segment fromthe data segments stored in step 403. In step 406.2, the event datamanager 320 may select an event type from the predefined event types. Instep 406.3, the event data manager 320 may determine if thecurrently-selected data segment corresponds to the currently selectedevent type. As part of step 406.3, a data type of the currently-selecteddata segment may be evaluated to determine if comparison to some or allcriteria of the currently-selected event type is appropriate. Forexample, it may not be appropriate to compare data from a camera sensorto sound criteria, may not be appropriate to compare data from newsreport to smoke detector criteria, etc. Data types for the data segmentsmay, for example, be stored with the data segments as part of step 403.

If a data type of the currently-selected data segment corresponds to adata type of the currently-selected event type, the currently-selecteddata segment and event type criteria may be compared. The comparison maycomprise signal processing (e.g., one or more of a Fourier-transform, az-transform, a Hilbert transform, analog and/or digital filtering, andany other linear and non-linear signal processing methods) and/or otheranalysis of some or all of that data segment prior to, and/or as partof, comparison to criteria of the currently-selected event type. Basedon the comparison, the event notification manager 320 may determinewhether the currently-selected data segment corresponds to thecurrently-selected event type. If no, step 406.4 may be performed. Instep 406.4, the event notification manager 320 may determine whetherthere are additional predefined event types that should be evaluated forcorrespondence to the currently-selected data segment. If yes, step406.2 may be repeated. If no, step 406.8 (described below) may beperformed.

If the event notification manager 320 determines in step 406.3 that thecurrently-selected data segment corresponds to the currently-selectedevent type, step 406.5 may be performed. In step 406.5, the eventnotification manager 320 may determine if there is an existing eventdata record for the currently-selected event type (e.g., an event datarecord generated during a previous iteration of one or more steps shownin FIG. 4D). If no, an event data record may be generated in step 406.6and the currently-selected data segment associated with that event datarecord. If yes, the currently-selected data segment may be associatedwith the existing event data record in step 406.7. After step 406.6 orstep 406.7, the event notification manager 320 may in step 406.8determine if there are more data segments to be evaluated forcorrespondence to the predetermined event types. If yes, step 406.1 maybe repeated. If not, step 409 (FIG. 4A) may be performed.

FIG. 4E shows, as indicated by a broken line box, additional details ofstep 416 from FIG. 4A. In particular, FIG. 4E shows example steps416.1-416.10 that may be performed to determine whether an event datarecord corresponds to a false and/or inapplicable event.

In step 416.1, the event notification manager 320 may determine whetherthe currently-selected event data record comprises a news report, orother type of report or message, that specifically indicates aparticular type of event and/or that specifically indicates occurrencesassociated with a particular event type. If no, step 416.3 (describedbelow) may be performed. If yes, event notification manager 320 may instep 416.2 determine if the report/message indicates that the event islocal to (e.g., within a predetermined proximity of) one or more of theuser devices associated with the event notification manager 320, and/orimmediate or imminent (e.g., whether the report/message indicates theevent is already occurring, or will within a predetermined time periodoccur) in a region that is local to one or more of those user devices.If yes, step 419 (FIG. 4A) may be performed. If no, step 416.3 may beperformed.

In step 416.3 the event notification manager 320 may determine if thereare any sensor data segments associated with the currently-selectedevent data record. If no, step 443 (FIG. 4C) may be performed. If yes,the event notification manager 320 may in step 416.4 select a sensordata segment from those associated sensor data segments. In step 416.5,the event notification manager 320 may determine if the selected sensordata segment indicates an environmental condition that, althoughindicative of an event of the type corresponding to thecurrently-selected event data record, may be expected and/or otherwisenot likely to be the result of such an event. For example, it may beexpected that, at certain times of day, persons may use a doorassociated with a door sensor and/or move about in a portion of anenvironment associated with one or more motion sensors. If sensor datafrom those door or motion sensors indicates activity during a time whensuch activity is expected, that sensor data may be less likely to beassociated with unwanted events.

Furthermore, the determination of whether the indicated environmentalcondition is expected may be based on determining a reliabilityassociated with the selected sensor data segment. The reliability may bedetermined based on environmental conditions and on sensor 310configuration data and/or other sensor 310 information (e.g.,manufacturer data, bench testing measurements) associated with theselected sensor data segment. For example, the selected sensor datasegment may have been received from a sensor 310 with a known tendencyto falsely trigger when in the presence of a low voltage brownout. Thus,sensor data segments received from the sensor 310 during a low voltagebrownout may be determined to be less reliable compared with sensor datasegments received during typical power network conditions. Unreliablesensor data segments (e.g., data segments with a reliability below apre-determined threshold) may be ignored and/or determined to indicateexpected environmental conditions.

Also or alternatively, the determination of whether the indicatedenvironmental condition is expected may be based on determining a levelof trust associated with the selected sensor data segment. Determiningthe level of trust may comprise determining security information of asensor 310 associated with the selected sensor data segment. Forexample, a low level of trust may be associated with sensor datasegments received from a sensor known to be vulnerable to securitycompromise and/or received via unencrypted communication channels thatare vulnerable to tampering. However, a high level of trust may beassociated with sensor data segments received from a sensor configuredwith anti-tamper and/or cryptographically verifiable security.Untrustworthy sensor data segments (e.g., data segments with a level oftrust value below a pre-determined threshold) may be ignored and/ordetermined to indicate expected environmental conditions. Also oralternatively, a determination of whether the selected sensor segmentindicates an expected environmental condition may be based on the levelof trust of the selected sensor data segment or a combination of thelevel of trust and other characteristics such as reliability. If thesensor data segment is determined in step 416.5 to be expected, step416.7 (described below) may be performed. Otherwise, step 416.6 may beperformed.

In step 416.6, the event notification manager 320 may determine if, forthe currently-selected data segment, there is an explanation other thanan event of the type associated with the currently-selected event datarecord. For example, if the event data segment indicates sounds and/orlights indicative of emergency vehicles, the event notification manager320 may determine if any of the associated user devices are outputtingcontent (e.g., a movie) in which an emergency vehicle is being depicted.Various other types of false alarm criteria may be used and applied todifferent types of data segments. For example, vibration sensor data maybe consistent with an attempt to break a door, but may also beconsistent with an earthquake or nearby heavy construction. If othervibration sensor data from other doors provides similar indications atabout the same time, an earthquake or construction activity may be amore likely cause of the currently-selected sensor data. As anotherexample, a loud noise detected by a microphone may be consistent with anexplosion. However, if there are other data segments (e.g., a newsreport associated with a different event data record) stronglysuggesting a thunderstorm, thunder may be a more likely cause of thecurrently-selected sensor data. The event notification manager 320 may,for each of multiple types of sensor data, access these and/or one ormore other stored false alarm criteria in connection with performingstep 416.6.

If the currently-selected sensor data segment is determined in step416.6 to have another explanation, a lower weight (e.g., 0) may beassigned to the sensor data segment in step 416.7. Otherwise, a higherweight (e.g., 1) may be assigned to that sensor data segment in step416.8. In step 416.9, the event notification manager 320 may determineif there are other sensor data segments, associated with thecurrently-selected event data segment, to be evaluated for assignment ofa lower or higher weight. If yes, step 416.4 may be repeated. If no,step 416.10 may be performed.

In step 416.10, the event notification manager 320 may determine if thesensor data segments associated with the currently-selected event datarecord satisfy a non-false threshold. For example, a non-false thresholdmay be satisfied if none of the sensor data segments was assigned thelower weight. Also or alternatively, the non-false threshold may besatisfied if an average of the assigned weights is within a designatedpercentage of the higher weight. Also or alternatively, the non-falsethreshold may be based on a sum of the assigned weights, and/or thehigher and lower weights may have different values for different typesof sensor data.

If the event notification manager 320 determines in step 416.10 that thenon-false threshold has been satisfied, step 419 (FIG. 4A) may beperformed. Otherwise, step 443 (FIG. 4C) may be performed.

As indicated above, step 419 may be performed based on a “yes”determination at step 416.2. Alternatively, one or more additionaldecision steps similar to steps 416.3 to 416.10 could be insertedbetween steps 416.2 and 419. A determination may be made, based onperforming the one or more additional steps, to disregard adetermination made at step 416.2 to proceed to step 419. For example,the event notification manger 320 may determine, based on performing theone or more additional steps, whether the data segment iscontraindicated by one or more other data segments. If the data segmentis determined to be contraindicated, a determination made at step 416.2to proceed to step 419 may be disregarded and step 443 may instead beperformed.

A determination that the data segment is contraindicated may be based ona comparison of the data segment with one or more other data segments.For example, the data segment may comprise information from an emergencydispatch report indicating an EMS event is occurring at a user premises(e.g., premises 102 a). However, video footage from a home securitysystem installed at the user premises may indicate that an EMS event isnot occurring. The event notification manager 320 may determine that thedata segment is contraindicated by video footage data. A determinationthat the data segment is contraindicated may be further based onsatisfying one or more criteria (e.g., criteria such as the videofootage is received from at least three or some other pre-determinednumber of different video cameras, the one or more other data segmentsare received from a pre-determined number of other sensors, the one ormore data segments are associated with a pre-determined number of datatypes, and/or the one or more data segments are received from sensorsdetermined to be reliable and/or trustworthy).

There are numerous ways in which event notifications may be caused inaccordance with the example method of FIGS. 4A-4E. For example, FIG. 5shows the environment 300 comprising an event 301 and elements such asan obstruction 501 (e.g., a wall, a VR headset, vehicle(s), building(s),land-based features such as hills and/or mountains, or any combinationof natural and/or artificial objects that may obstruct a field-of-view(“FoV”)), a user device 330, and an output device 520 (e.g., a displaydevice and/or an audio device) associated with the user device. Theobstruction 501 may obstruct a FoV (e.g., one or more viewable portionsof the environment 300) associated with a user of the user device. Forexample, the obstruction 501 may comprise a wall of an enclosed roomthat partially or fully obstructs a view of the event from the userlocation. Thus, the user may be unaware of an occurrence of the eventuntil the user device outputs, via the output device 520, an eventnotification corresponding to the event.

The event notification may comprise a display of a virtual environment300′ corresponding to the environment 300. The virtual environment 300′may comprise a virtual obstruction 501′ corresponding to the obstruction501 and a virtual event 301′ corresponding to the event 301.Furthermore, the virtual environment 300′ may comprise an avatar 530comprising a virtual FoV. Characteristics of the virtual FoV (e.g.,viewing range and/or an angle of view) may be configurable via thenotification preferences and/or the configuration settings associatedwith the user device. The avatar 530 may be user-navigable (e.g., intwo- and/or three-dimensional virtual space) within the virtualenvironment 300′. For example, a location and/or orientation of theavatar 530 may be changed, via one or more input devices, to anotherlocation and/or orientation within the virtual environment 300′. Theoutput device 520 may display some or all portions of the virtual eventbased on the location, orientation, and virtual FoV of the avatar 530.Alternatively, the avatar 530 may comprise a stationary perspective andstationary virtual FoV (e.g., if the output device 520 is a televisionset and/or while streaming local news reports via the output device520).

Numerous event types may be represented, within the virtual environment300′, by the virtual event 301′. For example, the event may correspondto a severe weather event type. The user may navigate the virtualenvironment 300′ and thus view virtual representations of storm relatedphenomena (e.g., tornado(s), high winds, nearby power outages, floodedareas, etc.), from various geographic perspectives (e.g., a ground-levelview, a top-down sky-level view, near a user premises, neighboringgeographic areas, etc.). The virtual event 301′ may comprise visualand/or audio representations of sensor data segments such as video/imagedata (e.g., images of darkening skies, storm related structural damageof premises, lightning flashes), audio data (e.g., outdoor warningsirens, thunder, rainfall sounds), news report data (e.g., verbalreports comprising words indicating a storm event), and/ormeteorological data (e.g., humidity data, thermal data, wind speed, winddirection, cloud cover, cloud height, and/or other types ofmeteorological data). Furthermore, the output device 520 may providerecommended user-actions based on configuration settings of the userdevice 330. For example, configuration settings may indicate the userdevice 330 is located at a premises with a basement. Thus, if a tornadois likely to occur or be occurring, the output device 520 may displayand/or produce audio of a message recommending a relocation to thebasement. Alternatively, the user device 330 may receive only textnotifications or no notification of the severe weather event (e.g., ifnotification preferences indicate that severe storm event occurringoutside of a pre-determined distance from the user device 330 should beignored).

Also or alternatively, the event may correspond to an intruder eventtype. The virtual environment 300′ may comprise a virtual representationof a premises (e.g., such as one of the premises 102) associated withthe user. The user may navigate within the virtual premises and viewvirtual representations (e.g., images received via security cameras)and/or hear sounds (e.g., voices, footsteps, and other sounds detectedby microphones) associated with one or more intruders. Furthermore, theoutput device 520 may output recommended user-actions based onconfiguration settings of the user device 330. For example,configuration settings may indicate that local public safety personnel(e.g., law enforcement and EMS) should be immediately notified (e.g., bythe event notification manger 320) of the intruder event. For example,the event notification manager 320 may be configured to notify anemergency dispatcher of the intruder event. The notification maycomprise information of an address of the premises, number of suspectedintruders, whether any weapons (e.g., knives, guns, etc.) have beendetected (e.g., via implementation of image matching techniques withpre-determined image data and video-camera data), and/or status(es) ofone or more people located within or near the premises (e.g., devicesconfigured to monitor vital signs such as pulse rate may further befurther configured to provide monitored vital signs to the eventnotification manager 320).

Also or alternatively, the event may correspond to a fire event typeassociated with a premises such as premises 102. The virtual environment300′ may comprise visual representations of fire related phenomena(e.g., present and predicted spread of fire and/or smoke, temperature,etc.), from various perspectives within and outside of the premises(e.g., the avatar 530 may be navigated to rooms, hallways, grounds, andland-based and/or sky-based views represented within the virtualenvironment 300′). Visual and/or or audio representations of the firerelated phenomena may be based on sensor data segments such as thermaldata (e.g., temperature data points mapped to geographic locations),video and/or audio data (e.g., video cameras installed inside andoutside of a premises with views of elevators, stairwells, and/or localtraffic), news reports (e.g., mentioning words such as “fire,” “forestfire,” or any other word associated with a fire event type),meteorological data (e.g., indicating a predicted spread of a fire tothe premises), or any other type of data that may indicate a fire event.Furthermore, the output device 520 may provide a notification that EMSpersonnel have been notified of the fire event. The output device 520may provide recommended user-actions according to local public safetyand/or EMS protocols. If a determination is made that the user shouldattempt to escape a premises, the virtual representation of the fireevent may indicate whether a nearby elevator is functional (e.g.,electrical data from an electrical network monitoring sensor mayindicate an elevator power outage) or whether one or more nearbystairwells are accessible (e.g., video data from installed video camerasmay indicate that some stairwells are congested with people, whileothers may be less congested).

An event notification may further comprise recommendations fornavigating hazardous elements associated with an event. For example,FIG. 6 shows the environment 300 with a user device 330 and an event 301comprising hazardous elements 610, 611, and 612. Each of the hazardouselements may correspond to one or more hazard types such as downed powerlines, flooded areas, fire, hazardous fumes, dangerous weather areas,pockets of ionizing radiation, hostile intruders, vehicular wreckagedebris, or any other type of hazardous condition or occurrence.Geographic locations associated with the hazardous elements may bedetermined based on sensor locations and/or sensor data segments. Forexample, image and/or video data received from two or more sensors withknown locations may be used to identify and triangulate positions of thehazardous elements. An event notification of the event 301 may compriseoutputting to the user device 330 a recommended navigation path 620 thathas been determined (e.g., by the event notification manager 320, basedon geographic locations of the hazardous elements and the user device330) to minimize user-interactions with one or more of the hazardouselements 610-612.

The user device 330 may receive an event notification output of theevent 301 showing hazard types and locations (e.g., relative to the userdevice location) associated with one or more of the hazardous elements610-612. The navigation path 620 may correspond to one or more of awalking path, a driving route, a flight path, or a water navigationpath. Proximity of the user device 330 to a hazardous element may beindicated via a display (e.g., virtual representation of hazardouselements), an audio output (e.g., warning sounds indicating nearbyhazardous elements), and/or physical movements of the user device 330(e.g., a mobile phone vibration). If the event 301 corresponds to an EMSevent type, the navigation path 620 may indicate a path to a nearbyinjured person. For example, the navigation path 620 may indicate alocation of a nearby automated-external-defibrillator (AED) andlocation(s) of injured person(s).

FIG. 7 shows the environment 300 comprising a user device 330, an outputdevice 720, and an event 301. A user of the user device 330 may perceivevisual stimuli (e.g., flashing lights) and/or audial stimuli (e.g.,vocalizations that may indicate distress, explosion sounds, outdoorwarning sirens, EMS sirens) indicating an occurrence of the event 301.For example, the user may perceive sounds consistent with ambulance orother EMS sirens and with injured persons. However, the user device 330may receive an event notification of the event 301 indicating that thevisual and/or audial stimuli likely originate from a source such as thenearby output device 720. For example, a determination may be made thatthe output device 720 is outputting video and/or sounds consistent withthe visual and/or audial stimuli (e.g., visuals and sounds may originatefrom a nearby television set playing an EMS related movie, sounds mayoriginate from a vehicle speaker system, etc.). Thus, an eventnotification may comprise a message indicating that the event 301 may beignored.

Also or alternatively, the output device 720 may comprise a speakerdevice, a headset, an earbud, or any other device capable of producingaudio. The user device 330 may receive an event notification indicatingthe event 301 comprises one or more of a plurality of pre-determinedsounds (e.g., outdoor warning sirens, a voice associated with the user'sparents, etc.). The user device 330 may output, via the output device720, audio associated with the event 301. For example, the event 301 maycomprise a parent speaking to a child wearing the output device 720(e.g., wearing headphones while listening to music). The output device720 may be caused to cease output (e.g., stop playing music) based ondetecting the parental voice and instead output the parent's voice. Alsoor alternatively, the event 301 may comprise a severe weather event. Theoutput device 720 may be caused to cease output based on a determinationthat an outdoor warning siren is active, and instead output audio of theoutdoor warning siren.

Although examples are described above, features and/or steps of thoseexamples may be combined, divided, omitted, rearranged, revised, and/oraugmented in any desired manner. Various alterations, modifications, andimprovements will readily occur to those skilled in the art. Suchalterations, modifications, and improvements are intended to be part ofthis description, though not expressly stated herein, and are intendedto be within the spirit and scope of the disclosure. Accordingly, theforegoing description is by way of example only, and is not limiting.

1. A method comprising: receiving, by a computing device from aplurality of sensors in proximity of one or more user devices, aplurality of sensor data segments comprising data from a plurality ofdifferent sensor data types and indicating a condition in an environmentassociated with the one or more user devices; determining, based on theplurality of sensor data segments and on data associated with one ormore event types, that the plurality of sensor data segments indicate anoccurrence of an event in the environment associated with the one ormore user devices; and based on the indicated occurrence of the event,causing the one or more user devices to output, by at least partiallyinterrupting content being output by the one or more user devices, anevent notification for the event.
 2. The method of claim 1, wherein thedata associated with one or more event types comprises, for each of theone or more event types, one or more of: sound criteria, video criteria,image criteria, wind speed criteria, water level criteria, temperaturecriteria, carbon monoxide criteria, smoke criteria, vibration criteria,door sensor criteria, window sensor criteria, or one or more words. 3.The method of claim 1, wherein the plurality of different sensor datatypes comprise two or more of: audio data, image data, video data,thermal data, temperature data, atmospheric pressure data, humiditydata, wind data, smoke data, gas composition data, vibration data,motion data, security sensor data, water data, entry sensor data,radiation data, or chemical data.
 4. The method of claim 1, wherein theevent comprises one or more of: a weather condition, a fire, a vehicleaccident, an emergency-medical-service (EMS) activity, a mass casualty,criminal activity, civil unrest, a mass evacuation, a hazardous material(HAZMAT) incident, an industrial accident, or a terrorist incident. 5.The method of claim 1, wherein the causing the one or more user devicesto output the event notification is further based on data associatedwith each of the one or more user devices.
 6. The method of claim 1,further comprising: determining a characteristic of a user associatedwith a user device associated with the one or more user devices; andbased on the determined characteristic, not causing the user device tooutput the event notification.
 7. The method of claim 1, wherein thecausing the output of the event notification is further based on adetermination that the event is not a false event or an inapplicableevent.
 8. The method of claim 1, wherein the one or more user devicescomprise at least one of: a headphone device; a virtual reality device;an augmented reality device; a mixed reality device; a mobile phone; ora display device.
 9. The method of claim 1, wherein the plurality ofsensors comprise one or more of: a camera, a microphone, a vibrationsensor, a temperature sensor, a heat sensor, a wind sensor, a watersensor, radar, a proximity sensor, a pressure sensor, an entry sensor, aphotodetector, an accelerometer, a gas sensor, a smoke detector, aninclinometer, a chemical sensor, or a motion detector.
 10. The method ofclaim 1, further comprising: receiving one or more additional datainputs indicating the event, wherein the one or more additional datainputs comprise one or more of: a news report, an emergency bulletinfrom a governmental authority, or an Emergency Alert System (EAS)message, wherein the determining is further based on the one or moreadditional data inputs.
 11. The method of claim 1, wherein a sensor datasegment, of the plurality of sensor data segments, indicates a conditionassociated with a plurality of event types, the method furthercomprising: determining an event type, of the plurality of event types,indicated by the sensor data segment.
 12. The method of claim 1, whereinthe event notification indicates one or more of: locations of one ormore hazards associated with the event, locations of the one or moreuser devices and of the one or more hazards, or a path to avoid the oneor more hazards.
 13. A method comprising: receiving, by a computingdevice, one or more data segments comprising an indication of acondition in proximity to a first user device and a second user device;determining, based on the one or more data segments and on dataassociated with one or more event types, that the one or more datasegments indicate an occurrence of an event; causing, based on an eventtype associated with the event, the first user device to output a firsttype of event notification for the event; and causing, based on theevent type, the second user device to output a second type of eventnotification for the event, wherein the second type of eventnotification is different from the first type of event notification. 14.The method of claim 13, wherein the second type of event notificationcomprises additional information about the event.
 15. The method ofclaim 13, wherein the causing the first user device to output the firsttype of event notification is based on the first user device beingassociated with a child user, and wherein the causing the second userdevice to output the second type of event notification is based on thesecond user device being associated with an adult user.
 16. The methodof claim 13, wherein the first user device and the second user deviceeach comprise at least one of: a headphone device; a virtual realitydevice; an augmented reality device; a mixed reality device; a mobilephone; or a display device.
 17. The method of claim 13, wherein the oneor more data segments correspond to one or more of audio data, images,video, thermal data, temperature data, atmospheric pressure data,humidity data, wind speed, wind direction, gas composition data, groundvibration data, seismic data, meteorological data, news report data,weather report data, non-ionizing radiation data, or ionizing radiationdata.
 18. A method comprising: receiving, by a computing device, one ormore data segments comprising an indication of a condition in proximityto a first user device and a second user device; determining, based onthe one or more data segments and on data associated with one or moreevent types, that the one or more data segments indicate an occurrenceof an event; based on an event type associated with the event and onfirst preference data associated with the first user device, causing thefirst user device to output an event notification for the event; andbased on the event type and on second preference data associated withthe second user device, not causing the second user device to output anevent notification for the event.
 19. The method of claim 18, whereinthe first user device and the second user device each comprise at leastone of: a headphone device; a virtual reality device; an augmentedreality device; a mixed reality device; a mobile phone; or a displaydevice.
 20. The method of claim 18, wherein the event comprises one ormore of: a weather condition, a fire, a vehicle accident, anemergency-medical-service (EMS) activity, a mass casualty, criminalactivity, civil unrest, a mass evacuation, a hazardous material (HAZMAT)incident, an industrial accident, or a terrorist incident.